Timing synchronization using a protocol such as IEEE 1588 PTP and a well-designed slave clock recovery mechanism can provide time synchronization in the sub-microsecond level and lower. Time sync requires an accurate measurement of the communication path delay between the time server (master) and the client (slave) in order to compute the time offset between them. However, the path delay estimation is done using the important assumption that the time delay from master to slave is equal to that from slave to master. In real life, the communication paths are not perfectly symmetric mainly due to dissimilar forward and reverse physical link delays and queuing delays. Even in cases where the physical link delays are known and properly compensated for during clock synchronization, queuing delays which are variable can still exist when timing messages go through the packet network and queued for forwarding. The processing and buffering of packets in network devices (switches, routers, etc.) introduce variations in the time latency of packets traversing the packet network. This mainly happens when timing transfer is done in an end-to-end manner without any form timing assistance from the network to help mitigate the effects of the variable queuing delays.
To estimate the relationship between a Slave clock and a Master, time synchronisation algorithms usually estimate two parameters, the instantaneous phase offset and the skew (clock frequency difference). These estimation algorithms provide very accurate estimations over time, however, they also take a long time to converge to an accurate set of estimated parameters. The Kalman filter is an example of one such time synchronisation algorithm.
An object of the present invention is to provide methods and devices which can quickly generate an initial accurate estimation of the skew. Ideally such methods and devices will generate accurate estimates of the skew faster than the use of a Kalman filter.